1. Field of the Invention
The present invention relates to a network device for processing data in a network and more particularly to use of bookkeeping memory in a network device that allows for enhanced processing speeds and data handling.
2. Description of the Related Art
A network may include one or more network devices, such as Ethernet switches, each of which includes several modules that are used to process information that is transmitted through the device. Specifically, the device may include port interface modules, designed to send and receive data over a network, a Memory Management Unit (MMU), to store that data until it is forwarded or further processed and resolution modules, that allow the data to be reviewed and processed according to instructions. The resolution modules include switching functionalities for determining to which destination port data should be directed. One of the ports on the network device may be a CPU port that enables the device to send and receive information to and from external switching/routing control entities or CPUs.
Many network devices operate as Ethernet switches, where packets enter the device from multiple ports, where switching and other processing are performed on the packets. Thereafter, the packets are transmitted to one or more destination ports through the MMU. The process of determining an egress port for a packet involves examining the packet to determine attributes.
However, for cases when the packet is large in size, such as a jumbo frame, the head of the packet is processed some time before the tail of the packet, in terms of a number of clock cycles of the network device. Thus, while some attributes of the packets and register settings pertaining to packet flow can be partially determined by looking at the beginning of the packet, the end of the packet must be received and confirmed before the attributes and the settings can be entered or learned. Because of this, there can be a time penalty that can inversely affect performance of the network device.